package com.zdb.service;

import com.zdb.common.Result;
import com.zdb.pojo.LongMessage;
import com.zdb.pojo.Model;
import com.zdb.pojo.Session;
import com.zdb.pojo.dto.PromptDto;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import reactor.core.publisher.Flux;

import java.util.List;
import java.util.Map;

public interface AiService {
    List<Model> getModelList();
    List<Session> getSessionList();

    List<LongMessage> getMessageList(int id);


    List<LongMessage> getSessionDetail(int id);

    SseEmitter streamChatWithEmitter(String prompt, String model, Integer id,Boolean deepThinking);
    Result imageGet(String prompt, String model, Integer id);

    Flux<Result> sendStream(String prompt, String model, Integer id,Boolean deepThinking);
    Session createSession();
}
